<script setup lang="ts">
import { onLaunch, onShow, onHide } from "@dcloudio/uni-app";

onLaunch(() => {
  // #ifdef MP-WEIXIN
  checkUpdate();
  // #endif
  uni.getSystemInfo({
    success: function (res) {
      console.log(res, "---------------");
    },
  });
});

/**
 * @Description: 检查小程序更新
 * @Author: knight
 * @Date: 2025-04-21 14:16:24
 */
function checkUpdate() {
  const updateManager = uni.getUpdateManager(); //本API返回全局唯一的版本更新管理器对象： updateManager，用于管理小程序更新。
  updateManager.onCheckForUpdate((res) => {
    // 当向小程序后台请求完新版本信息，进行回调方法
    console.log(res.hasUpdate,'当向小程序后台请求完新版本信息，进行回调方法');
    if (res.hasUpdate) {
      updateManager.onUpdateReady((res) => {
        //当新版本下载完成，会进行回调
        uni.showModal({
          title: "更新提示",
          content: "新版本已经准备好，是否重启应用？",
          success(res) {
            console.log(res,"更新回调");
            
            if (res.confirm) {
              // 新的版本已经下载好，调用 applyUpdate 应用新版本并重启
              updateManager.applyUpdate();
            }
          },
        });
      });
      updateManager.onUpdateFailed((res) => {
        // 新的版本下载失败
        uni.showModal({
          title: "更新提示",
          content:
            "新版小程序下载失败\n请自行退出程序后手动卸载本程序，再次运行",
          confirmText: "知道了",
          success(res) {},
        });
      });
    }
  });
}
</script>

<style>
page {
  background-color: #f5f5f5;
}
</style>
